==================================================
Apply for GSoC in MediaGoblin (and Guix/Shepherd!)
==================================================

:date: 2016-03-22 15:00
:author: Christopher Allan Webber
:tags: gsoc, guix, mediagoblin

Hello all!

Summertime is fast approaching, and this means GSoC is fast approaching too.
This year we have some
`interesting potential projects <https://wiki.mediagoblin.org/GSOC_2016>`_.
Check it out, and if you're interested, apply!
`You have until Friday (March 25th) to get your application in. <https://developers.google.com/open-source/gsoc/timeline>`_

We just added a new item, and I wanted to call it out specifically:
`porting federation to ActivityPub <https://wiki.mediagoblin.org/GSOC_2016#Port_federation_code_to_ActivityPub>`_.
This is not the only potentially interesting GSoC project, but it is a
special one; you'd be able to work with Jessica Tallon (the source of
federation support in MediaGoblin!) on updating federation to our current
standards work.

One more call-out: this one isn't MediaGoblin specific, but I (Chris
Webber) am willing to mentor it:
`Adding an extensible event loop to Shepherd <https://libreplanet.org/wiki/Group:Guix/GSoC-2016#Add_an_extensible_event_loop>`_
(the init system used by Guix).
This would quite probably use the under-announced
`GNU 8sync project <https://notabug.org/cwebber/8sync>`_.
If you're interested in learning about event loops and how to write them,
you might want to `watch <https://archive.org/download/SICP_4_ipod/Lecture-5b.ogv>`_
and even better, `read <https://mitpress.mit.edu/sicp/full-text/book/book-Z-H-22.html>`_
the corresponding sections of `SICP <https://mitpress.mit.edu/sicp/>`_ which
inspire it.
This will be a tough one!
But if you're really interested in digging into some cool ideas about
concurrency, I'd recommend it.
There are
`some other great projects for Guix as well <https://libreplanet.org/wiki/Group:Guix/GSoC-2016>`_!

Both MediaGoblin and Guix welcome all applicants, though both projects also
strongly encourage women, non-binary gendered individuals, people of color,
and other underrepresented groups to apply.
Both projects follow a Code of Conduct
(`for MediaGoblin <https://www.djangoproject.com/conduct/>`_ and
`for Guix <http://git.savannah.gnu.org/cgit/guix.git/tree/CODE-OF-CONDUCT>`_).

Time is running short; apply!
Detailed proposals are encouraged, and jumping in and experimenting /
will greatly enhance your possibility of acceptance in both projects.
Join #mediagoblin and #guix respectively on irc.freenode.net to talk
to other developers.

Happy hacking!

